/**
 * 
 */
package componentes;

import java.util.Iterator;
import java.util.List;
import java.util.Set;

import utiles.Rango;

/**
 * @author luks
 *
 */
public class Terreno {
	
	
	private static final int CANTIDAD_DE_FILAS=25;
	private static final int CANTIDAD_DE_COLUMNAS=25;
	
	private Posicion [][]terreno;
	private Camino caminoDeJuego;
	private int tipoDeCamino=1;
	
	public Terreno(){
		terreno= new Posicion[CANTIDAD_DE_FILAS][CANTIDAD_DE_COLUMNAS]; 
		for (int i=0; i < CANTIDAD_DE_FILAS; i++)
			for (int j=0; j < CANTIDAD_DE_COLUMNAS; j++)
				terreno[i][j] = new Posicion();
			
		caminoDeJuego= new Camino(tipoDeCamino,terreno);
		
	}
	
	public List getCamino() {
		return caminoDeJuego.getListaDePosiciones();
	}

	public int getCANTIDAD_DE_COLUMNAS() {
		return CANTIDAD_DE_COLUMNAS;
	}

	public int getCANTIDAD_DE_FILAS() {
		return CANTIDAD_DE_FILAS;
	}

	public Posicion[][] getEscenarioDeJuego() {
		return terreno;
	}
	
	public Set obtenerUnaListaDePosiciones(int coordenadaX,int coordenadaY,int rango,int espacioLibreEnLosCostados,int espacioLibreEnLosFrentes) {
		Rango unRango=new Rango();
		return unRango.obtenerPosionesDeRango(coordenadaX, coordenadaY, this, rango, espacioLibreEnLosCostados, espacioLibreEnLosFrentes);
	}

	public void agregarObjetoATerreno(Object objeto){
		
		
	}
	
	public Posicion getPosicion (int coordenadaX, int coordenadaY){
		
		return ((Posicion) terreno [coordenadaX][coordenadaY]);	
	}
}
